Method and apparatus for network wide adaptive resource allocation for OFDMA/TDMA networks

ABSTRACT

In this invention, adaptive resource allocation is proposed. A resource is divided into Blocks and each base station is assigned a Block for its terminals that are in the interference region, and another Block for its terminals that are not in the interference region. Blocks other than these two are not used by the base station. Bordering base stations does not use the same Block if they have any terminal in the shared interference region. 
     Another embodiment of the invention proposes resource sizing along with load balancing scheme. Resource sizing is defined as determining the size of the resources allocated for each Block. This is adaptable and can change over time according to topology. Another embodiment of the invention proposes a handover method for some terminals in order to increase the Block utilization by handing a terminal over another base station. Final embodiment of the invention proposes an adaptive control scheme that defines multiple policies for different topologies. Selecting a policy is determined by the given topology as well as the output utilization where utilization is defined as the allocated resource over total resource per Block together with demanded resource over total resource per Block.

RELATED APPLICATION AND PRIORITY

This non-provisional application is claiming the priority date of an earlier-filed U.S. provisional application Ser. No. 60/753,709 filed on Dec. 22, 2005 under 35 U.S.C. §119(e)

SUMMARY OF THE INVENTION

In a typical cell deployment, interference regions can be mitigated in space, time and frequency. Overlaid but not co-located base stations can interfere with each others thereby create regions, called interference region (IR), in which a terminal, which could be fixed or mobile, receives signals from more than one base station. If a single channel is used across the network where there are plurality of base stations, communication in interference regions can be disruptive if there is no resource management. For a channel with a given bandwidth, we define the total resource available as RES. The basic unit in RES is called slot, and each slot occupies a frequency bin and a symbol time. Multiple slots can be combined into a unit called Block. We partition RES into Blocks where each Block contains different slots, and size of each Block is not necessary the same.

Typically, a base station can use some of these Blocks, and up to RES. Let B_(i) to be the ith Block in RES. If IR doesn't exist in the network or there is no active terminal in the IR(s), each base station can use the entire RES for its terminals. Otherwise, the same B_(i) used by a base station for terminals in its IR can not be used by any base stations in which it shares the IR with. Define BC(j) to be the Block allocated to station j for its associated mobiles in its IR.

Intuitively, if the resource in the network is not managed properly, the resource available to a base station i would only be

${{{RES}(i)} = {{RES} - {\sum\limits_{\forall{j \in {\{{{interferer}\mspace{11mu} {(i)}}\}}}}{{BC}(j)}}}},$

where {interferer(i)} is the set of base stations that base station i interferes with. As {interferer(i)} or each BC(j) grows, the RES(i) diminishes. Since BC(i) is the resource for terminals in the IR of station i, the terminals attached to station i who are not in its IR can only have the remaining RES(i)−BC(i).

The resource management method proposed here tries to maximize the overall network throughput

$\left( {i.e.\mspace{14mu} {\sum\limits_{\forall i}{{RES}(i)}}} \right),$

we want the throughput to approach M*RES, where M is total number of stations. The underlying mechanism is that we want to increase the resource reuse in IR(s) (i.e. for any j, kε{interferer(i)}, we want BC(j)⊂BC(k)) such that

$\sum\limits_{\forall{j \in {\{{{interferer}\mspace{11mu} {(i)}}\}}}}{{BC}(j)}$

is minimized for all station i).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the network architecture.

FIG. 2 illustrates the policy based macro and micro scheduling.

FIG. 3 depicts the resource grant/deny flow chart.

FIG. 4 shows the flow diagram for macro resource assignment.

FIG. 5 shows the flow diagram for centralized resource manager.

FIG. 6 shows the inputs and outputs of macro and micro resource manager for split-resource manager.

FIG. 7 shows the conflict management and resource allocation flow charts.

FIG. 8 shows the thresholds for voice, video and data.

FIG. 9 shows the overlapping area of two base stations.

FIG. 10 shows the block definition in an OFDMA frame

FIG. 11 shows possible allocation in an OFDMA frame

FIG. 12 shows the possible allocation of two base stations with coordination.

DETAILED DESCRIPTION OF THE INVENTION WITH CERTAIN EMBODIMENTS

Proposed system 100 has a Central Controller 102, plurality of Base Stations 103-105, and plurality of Terminals 110-118 as entities. Central Controller is attached to the Backbone Network 101, and it captures the incoming traffic and routes to the base stations. Besides having the routing functionality, Central Controller does high-level resource management across the network for the base stations. Base stations are entities that has wired and wireless interface. They talk to terminals through their wireless interfaces. Each base station has a fixed amount of resource per frame and is required to distribute this resource to its terminals.

System and Method

In order to satisfy every traffic demand and network topology, a feed back control method 200 is proposed. The system diagram shown in FIG. 4 depicts that depending on the scenario 201 a particular policy 202 is selected by the central controller and that policy is updated with respect to the change in the scenario or output utilization 203 of each base station.

Network Entry/Exit

1. Life Cycle of a Communication Request

FIG. 3 a contains the process of a terminal requesting access to the network. FIG. 3 b contains the process of servicing a terminal request.

2. Resource Management Overview

FIG. 4 contains the overall process of the Resource Management 400 handled by the resource manager. The resource management can be divided into two parts. The first part is the conflict management 401-402, where the resource manager identifies all conflicts (i.e. the terminals in the IR(s) between two or more base stations). If there is no terminal or terminals are inactive in IR(s), each base station i can use full resources (i.e. RES(i)=RES); else resource manager has to resolve the conflicts between base stations (i.e. associate each terminal in IR(s) to only one base station). The second part is the resource allocation 403-404, where the resource manager first allocates BC(i) to each station i, and given the current allocation, station i assigns the slots in RES(i) to each associated terminal based on its demand.

3. Approaches to Resource Management

There are three approaches to resource management.

The first is the centralized approach called centralized micro-resource management, where the central controller handles the entire resource management across the entire network. The second approach is called the split-resource management, where the central controller performs macro-level resource assignments and Base Station performs micro-level resource assignments.

The third is the distributed approach called distributed micro-resource management, where each Base Station coordinates with its neighbors to perform resource management locally. The last approach is not considered here since typically frequent communication between base stations is not feasible if performance is considered. The methods for first and second approach are discussed below.

3.1 Centralized Micro-Resource Management

The centralized micro-resource manager 501 performs resource management in the centralized controller. Consider the inputs and outputs of this component in FIG. 5, the resource manager takes a list of terminals with its location and resource request, a list of base station locations, and associates each terminal with its allocated resource to a base station. Here, the following challenges arise:

-   -   Frequency of the redistribution of resources     -   Handling of new request or entry of new terminal

If the resource manager is executed very infrequently, any new requests will incur large delay. However, if it is run very frequently, there will be a lot of traffic between the centralized controller and base stations. One advantage of this scheme is that it maximizes the overall throughput of the network due to its global view.

3.2 Split-Resource Management

In the split-resource management 600, we divide the whole resource management responsibilities into two parts. The Macro-Level Managements defined in FIG. 4 is handled by the Macro-Resource Manager 601 running on the centralized controller, and the Micro-Level Managements is handled by Micro-Resource Manager 602 running on individual base stations. The input and output relation (See FIG. 6) of the Macro-Level Manager is described as follows: the Macro-Resource Manager takes a list of terminal locations and a list of base station locations or the connectivity table between terminals nodes and base stations as inputs, and produces a list of Blocks to each base station. Connectivity is defined as the ability for a terminal and a station to communicate bidirectionally. The allocation scheme is discussed in the later section. Each output is then addressed to each Micro-Resource Manager. Given the allocated resources and terminals requests, Micro-Resource Manager assigns the resources to the terminals accordingly.

3.2.1 Macro-Resource Manager

The tasks of Macro-Resource Manager are: 1) Minimize interference in the IR(s). 2) Optimize entire network performance according but not limit to throughput and fairness. 3) Allocate Blocks to base station. The flow diagram of Macro-Resource Manager is described in FIG. 7. The details of each block are discussed in the following sections.

3.2.1.1 Interference Detection 701

The resource manager first identifies the IR(s). A terminal is considered to be in the IR(s) if a terminal is within the communication range of two or more base stations or it is able to communicate more than two base stations. This can be done based on terminal and base stations locations or the connectivity table of terminal and base stations. If no conflict is detected, then there is no IR.

3.2.1.2 Resource Partitioning and Assignment 702

The RES 1100 is partitioned into Blocks, and each base station inherits the same partition (see FIG. 11). For a given base station, we would like its interferers to re-use the same blocks (i.e. minimize number of partitions). Thus, its available resource is maximized. The actual size of each Block is determined in the later step. If maximum number of interferers a base station can have is C, it can easily be shown that maximum number of partitions in RES is C+1 (i.e. one Block allocated to each of its interferer, one Block for terminals in its IR and one Block for terminals not in its IR). Each Block is defined as B_(i), where i is the index of the Block, and B₀ is reserved for terminals who are not in the IR. Consider all base stations that base station i interferes, by constructing a conflict graph, then this problem can be formulated as a graph coloring problem in which we can determine the minimum number of partitions as well as the corresponding assignments. If the minimum number of partitions is K, then the set of partition will be {B₀, B₁, . . . , B_(K)}. Each base station is assigned to one of the element in the set {1, 2 . . . K}, and the element is used to identify the Block reserved for the terminals in its IR which are attached to it. The block B₀, and any B_(i) that is not being used by its interferers can be used by mobiles attached to it who are not in its IR. For example, consider FIG. 12, B₁ is allocated to base station i for terminals attached to it in its IR, and B₂ is allocated to the interferer of base station i in which it can not use. Since interferers of base station i do not use any other Blocks, other than B₁ and B₂, it can use the remaining Blocks for terminals attached to it who are not in its IR. The subsequent methods proposed next determine the actual sizing of each B_(i).

3.2.1.3 Cost Association 703

Each terminal is assigned to a cost weight or a series of cost weights such as one per station it can communicate. The weight can be a function of a terminal's receive/transmit signal strength, traffic demand and etc. For example, suppose only one cost weight is assigned to each terminal. If the objective is to achieve fairness (i.e. assign each terminal same number of slots), each terminal will be assigned an equal weight. On the other hand, if the objective is to maximize network utilization, each terminal will be assigned according to its demand for resource (i.e. average traffic demand for each terminal divided by its current highest available rate). No resource is assigned to inactive terminals. This cost weight is used in the next step.

3.2.1.4 Terminal Association 704

Here, we associate terminals to base stations. The terminals who are not in the IR(s) are immediately assigned to the base station in which they can communicate with. For the terminals who are in the IR(s), we associate them with a base station in a way that maximizes the overall network utilization. The algorithm can be described as follows:

Suppose B_(i) is assigned to each base station. The size of each B_(i) is initially zero and their size is interactively incremented. The size for each B_(i) here is not necessary corresponding to the actual occupancy in the RES. The method in determining the exact size of B_(i) is given later. Consider a terminal, who can communicate with base station i and j, where B₁ is allocated to base station i and B₂ is allocated to base station j. Define B₁* and B₂* to be the estimate occupancy of B₁ and B₂ in base station i and j. We need to decide whether to associate the mobile to the base station i or base station j. Once the terminal is assigned, the estimated occupancy of that base station will be updated. Consider the following rules: 1) Suppose B₁* and B₂* are currently empty, pick the one that has the minimum number of base stations using (e.g. if there are M base stations assigned to B₁ and N base stations assigned to B₂, where M>N, we will attach the mobile to base station j and B₂*=B₂*+C, where C is the estimated load/cost of the mobile station). 2) Suppose both base station i and j currently have enough space to accommodate the terminal with cost C, pick the one that has the maximum available space (i.e. max((B₁-B₁*), (B₂-B₂*))). Once the terminal is assigned, the B_(i)* will be updated as described in the case. 3) Suppose both B₁ and B₂ do not have enough space to accommodate the cost C, pick the one that maximize the overall network utilization (i.e. min(M*(C−(B₁-B₁*)), N*(C−(B₂-B₂*))). For this case, once the base station is chosen, the Block size has to be updated for the entire network (e.g. suppose base station i is chosen, we have to increment B₁ by C−(B₁-B₁*) across the network).

We perform this algorithm iteratively on every mobile in the IR(s). The order at which the algorithm acts on the terminals affects the final result. To pick the order at which the algorithm yields the optimal result is NP hard. The method proposed here acts on the terminals according to terminal's connectivity with the base stations, and the terminal with the lowest connectivities is first assigned. By assigning the lowest connectivities first, the algorithm can achieve the optimal with greater chance. On the other hand, if the method assigns the terminals in the reversed order, and the sequence of assignments is not already optimal, it would be more difficult for an algorithm to achieve optimal since the later assignments/terminals have lower number of connectivities, thus imposes more constraint on the algorithm.

3.2.1.5 Allocation Fine Tuning 705

One optional embodiment of the invention proposes to bring down the size of the B_(i) for i≠0. The algorithm is described as followed:

-   -   1) Pick the largest B_(i), choose the base station with         B_(i)*=B_(i).     -   2) Try to shift its terminal in the IR to its interferer.

3.2.1.6 Resource Sizing 706

In this step, the size of each B_(i) determined here corresponds to the fraction of the RES allocated to each B_(i). The determination is based on the cost assignments and the terminal assignments in the previous step (see FIG. 11 for an example of resource partition). The mechanism to compute the size is as follows:

-   -   1. compute the total cost for each B_(i) by summing up the cost         of each terminal assigned to B_(i),     -   2. compute the total cost of the entire network by summing up         the cost of each terminal in the network,     -   3. compute the scaling factor S(i) by dividing the total cost of         the B_(i) by the total cost of the network,

The size of B_(i) is defined as S(i)*RES.

Here is a list of policy considered for terminals in the IR(s):

-   -   Equal Resource: for this policy, each terminal receives the same         amount of resource whether or not it is in the IR (i.e. a         terminal gets C slots regardless its location). However, if a         terminal is in the IR between two base stations, for the same C         slots assigned to the terminal, it would cost the network 2*C.         In this policy, we want to achieve fairness, so the terminals in         the IR are penalized. To achieve this, the cost of the terminal         is divided by the number of base stations it can communicate         with.     -   Equal QoS: for this policy, each terminal receives the same QoS.         As opposed to Equal Resource Policy, the terminals in the IR(s)         are not penalized. However, the terminals not in the IR(s) are         penalized since the terminals in the IR(s) occupy more resource.         To achieve this, the cost of each terminal is unchanged.

3.2.2 Micro-Resource Manager

The Micro-Resource Manager runs in each Base Station. FIG. 8 contains the initial bandwidth allocation for each service classes. It's the responsibility of the micro-resource manager to guarantee QoS within the allocated blocks. Each service type is pre-allocated with fixed minimum bandwidth called αmin, βmin and δmin for voice, video and data respectively. Resource Pool contains the remaining available resource. Once any of the initial allocation is filled, it is allowed to occupy resources in the Resource Pool. However, the higher priority request takes precedence over the lower priority request. The subsequent request from a node for each service type will be de-prioritized, and the priority is assigned based on its service class, number of open connection of a given type, remaining resource in the Resource Poll.

Once the resource is granted to a connection, the resource manager will enhance the quality of the connection through channel diversity. Packet transmissions per connection are reshuffled both in frequency and in time to combat narrowband noise and fading.

3.2.3 System Update

The Feedback Control is used by the central controller to resize the B_(i) during run-time. Since the network topology and the traffic demand keep changing over time, some B_(i) can be over-utilized or under-utilized at any given time. The method proposed here allows the central controllers to resize B_(i) to meet traffic demand. The mechanism is described as follows: Each base station periodically reports to the central controller the average utilization of the Block used by the terminals attached to it who are in its IR as well as for the block used by terminals attached to it who are not in the IR.

The following are the rules for system update:

Rule 1: Terminal assignment: When a terminal located in IR request to access the network, the central controller can decide which base station it should connect to considering the network performance. Central Controller can decide according to utilization of particular regions as well as other constraints. For the terminals that are not in the IR(s) request to access the network, the decision is left to the base station.

Rule 2: Periodic resource sizing: Central Controller periodically executes the resource sizing defined in FIG. 7 based on the traffic history of each mobile.

Rule 3: Event based resource management: Central Controller aperiodically executes the full resource management defined in FIG. 7 when the utilization reaches a limit, or when the utilizations are highly unbalanced.

These rules can be generalized and service provider can configure these rules appropriately according to the topology and utilization. An example definition of the utilization could be ratio of allocated over total resources as well as number of dropped sessions. 

1. A method for allocating network wide adaptive resources, comprising the steps of providing a central controller, a plurality of base stations in wireless communication with said central controller; and a plurality of subscriber units in communication with said base stations; said base station including a micro scheduler having traffic allocation logic to allocate OFDMA frame, said central controller including a macro level scheduler that policies the traffic and being forwarded to each base station, whereby micro and macro scheduler controls and optimize radio frequency (RF) and backhoul resources in unison; identifying mobile subscribers in a first overlapping region of two or more base stations by said central controller; assigning a second region in the OFDMA to a particular base station, blocking out said second region for other base stations in conflict with said base station.
 2. A network comprising: a central controller; a plurality of base station units to communicate with the central controller; and a plurality of subscriber units to communicate with the base station using an orthogonal frequency-division multiple-access (OFDMA) protocol; the base station includes a micro scheduler that have the traffic allocation logic to allocate OFDMA frame; the central controller includes a macro level scheduler that policies the traffic that is forwarded to each BS. Together micro and macro scheduler controls and optimize radio frequency (RF) and backhoul resources.
 3. The network defined in claim 1 wherein the resource management is composed of conflict management and resource allocation. Conflict management is responsible to identify the mobile stations that are in the overlapping region of two or more base stations. Conflict management assigns a region in the OFDMA to a particular BS and blocks out the aforementioned region for the other BSs that are in conflict with the said MS. A MS in conflict is served with the said region only. Resource allocation assigns a region to each station and an allocation is given to each terminal within that region for its traffic demand. Procedure is as follows; A (mobile) terminal sends the scanning report which contains the signal level to neighboring base stations; conflict management methodology identifies the conflicted base stations through the mobile stations that can hear more than one base station; conflict management methodology creates regions within the OFDMA frame to resolve the conflicts; conflict management methodology assigns a region to a base station and informs other neighboring base stations in the same conflict to block out that region; resource allocation methodology then assigns terminals to a region.
 4. The resource management method defined in claim 1 can be centralized or split in the said network. The centralized management requires central controller to handle the entire resource management across the entire network. Conflict management and resource allocation resides in the central controller.
 5. Following claim 3, the split-resource management has macro and micro resource manager. Macro resource manager consists of a. Interference detection methodology which identifies the conflict regions with respect to scanning reports or connectivity table. b. Resource partitioning and assignment methodology partitions the blocks. Some blocks are used by all base stations and some blocks are assigned to one base station among the base stations that are in conflict. c. Cost association methodology assigns a cost weight to each terminal depending on its characteristics. d. Terminal association methodology assigns each terminal to a base station. e. Allocation fine tuning methodology does local resource optimization by balancing terminals from a heavily loaded base station to its lightly load neighbors, thereby the resource available to that local region is further increased. f. Resource sizing methodology computes the total cost of each block and resize the blocks according to the method described in the embodiment. Micro resource manager in each base station allocates bandwidth to each terminal depending on the policies defined in the embodiment of the invention. Method has system update mechanism that resizes the blocks depending on the changes in the topology. System update consists of terminal assignment which is a decision mechanism to associate a terminal to a base station. Association takes place to reduce conflict regions; periodic resource sizing which is an event that takes place periodically regarding traffic of each terminal; event based resource management is a load balancing algorithm that kicks in when the system is overloaded and network unbalanced
 6. Apparatus for allocating network wide adaptive resource, comprising: a central controller, a plurality of base stations in wireless communication with said central controller; a plurality of subscriber units in communication with said base stations; said base station including a micro scheduler having traffic allocation logic to allocate OFDMA frame, said central controller including a macro level scheduler that policies the traffic and being forwarded to each base station, whereby micro and macro scheduler controls and optimize radio frequency (RF) and backhoul resources in unison; means for identifying mobile subscribers in a first overlapping region of two or more base stations by said central controller; means for assigning a second region in the OFDMA to a particular base station, means for blocking out said second region for other base stations in conflict with said base station. 